package laboratorioV.grupo21.tp4.generadores;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.HashSet;
import java.util.Scanner;
import laboratorioV.grupo21.tp4.productos.Producto;

public class GeneradorSetProductos {

	public HashSet<Producto> generarSet()
	{
		HashSet<Producto> setProductos = new HashSet<Producto>();
		Producto productoAux;
		
		String nombreProducto[][] = new String[6][2];  //[id][0] = idCategoria, [][1]= descripcion
		nombreProducto[0][0]="1";
		nombreProducto[0][1]="Mouse Generico";
		
		nombreProducto[1][0]="1";
		nombreProducto[1][1]="Mouse Logitech x4";
		
		nombreProducto[2][0]="2";
		nombreProducto[2][1]="Teclado Generico";
		
		nombreProducto[3][0]="3";
		nombreProducto[3][1]="LCD 15 ViewSonic";
		
		nombreProducto[4][0]="3";
		nombreProducto[4][1]="LCD 20 DELL";
		
		nombreProducto[5][0]="3";
		nombreProducto[5][1]="LCD 22 DELL";
		
		
		for (Integer i = 0; i < nombreProducto.length; i++) {
						
			productoAux = new Producto(i, nombreProducto[i][1],Integer.parseInt(nombreProducto[i][0]));			
			setProductos.add(productoAux);						
		}
		return setProductos;
	}
	
	public HashSet<Producto> generarSetFromFile(){
		try{
			HashSet<Producto> setProductos = new HashSet<Producto>();
			StringBuffer strProductos = new StringBuffer();
			Scanner s = new Scanner(new BufferedReader(new FileReader("productos.txt")));
			String[] strAux;
			Producto productoAux;
			
			while (s.hasNextLine()) {				
				strProductos.append(s.nextLine());                
            }			
			
			String[] productos = strProductos.toString().split("\\|\\~\\|"); 
								
			for (String strProducto : productos) {				
				strAux = strProducto.split("\\|\\|");
				productoAux = new Producto(Integer.parseInt(strAux[0]), strAux[2],Integer.parseInt(strAux[1]));
				setProductos.add(productoAux);				
			}
			return setProductos;
		}
		catch (Exception e) {
			// TODO: handle exception
		}
		return null;
	}
}
